home *** CD-ROM | disk | FTP | other *** search
/ Software Vault: The Diamond Collection / The Diamond Collection (Software Vault)(Digital Impact).ISO / cdr37 / msg_main.zip / DEFAULT.SRC next >
Text File  |  1995-03-07  |  15KB  |  1,015 lines

  1. # DEFAULT.SRC
  2.  
  3. # Copyright 1994 Digital Dynamics
  4.  
  5. ###############################################################################
  6. #                                                                             #
  7. # Default Command Shell for Synchronet Version 2.00a                          #
  8. #                                                                             #
  9. # This shell is an imitation of the Version 1c command set/structure          #
  10. #                                                                             #
  11. # It also serves as an example of a complex command shell using the Baja      #
  12. # command shell language                                                      #
  13. #                                                                             #
  14. ###############################################################################
  15.  
  16. # Tips:
  17. #
  18. #       Tabstops should be set to 8 to view/edit this file
  19. #       If your editor does not support control characters,
  20. #               use \1 instead of \1 for Ctrl-A codes
  21. #       All lines starting with # are considered comments and are ignored
  22. #       Left margins (indents) are not relevant and used only for clearity
  23. #       Almost everything is not case sensitive with the exception of @-codes
  24.  
  25. ################################# Begins Here #################################
  26. # Set return point for main menu commands (via end_cmd)
  27. :main
  28. cmd_home
  29.  
  30. # Display TEXT\MENU\MAIN.* if not in expert mode
  31. compare_user_misc expert
  32. if_false
  33.     cls
  34.     menu MAIN
  35.     end_if
  36.  
  37. # Update node status
  38. node_action main
  39. async
  40.  
  41. inc_main_cmds
  42.  
  43. # Display main Prompt
  44. print "-c\r\n■ bhMain nc■ h"
  45. compare_ars exempt T
  46. if_true
  47.     print @TUSED@
  48. else
  49.     print @TLEFT@
  50.     end_if
  51. print " nc: n"
  52.  
  53. # Get key (with / extended commands allowed)
  54. compare_user_misc COLDKEYS
  55. if_false
  56.     getkeye
  57. else
  58.     getstrupr 60
  59.     endif
  60.  
  61. compare_ars RIP
  62. if_true
  63.     getlines
  64.     end_if
  65.  
  66. # Do nothing for control keys and space
  67. cmdkey ^@
  68.     end_cmd
  69. cmdkey ^M
  70.     end_cmd
  71. cmdkey ^S
  72.     end_cmd
  73.  cmdkey  "
  74.     end_cmd
  75.  
  76. # Write command to log file
  77. logkey_comma
  78.  
  79.  
  80.  
  81. # Show the key hit
  82. compare_user_misc COLDKEYS
  83. if_false
  84.     printkey
  85.     endif
  86.  
  87. # String commands start with a semicolon
  88. cmdkey ;
  89.     compare_user_misc COLDKEYS
  90.     if_true
  91.         shift_str 1
  92.     else
  93.         getstrupr 40
  94.         end_if
  95.     exec_bin str_cmds
  96.     end_cmd
  97.  
  98. cmdkey T
  99.     chkfile ..\text\menu\tmessage.*
  100.     if_true
  101.         menu tmessage
  102.         end_if
  103.     call file_transfers
  104.     end_cmd
  105.  
  106. compare_user_misc COLDKEYS
  107. if_false
  108.     crlf
  109.     end_if
  110. pause_reset
  111.  
  112. # Menu
  113. cmdkey ?
  114.     compare_user_misc expert
  115.     if_true
  116.         menu main
  117.         end_if
  118.     end_cmd
  119.  
  120. # Sysop Menu
  121. compare_ars SYSOP or EXEMPT Q or I or N
  122. if_true
  123.     cmdkey !
  124.         menu sysmain
  125.         end_cmd
  126.     end_if
  127.  
  128. # Commands
  129.  
  130. cmdkey A
  131.     auto_message
  132.     end_cmd
  133.  
  134.  
  135. cmdkey C
  136.     chat_section
  137.     end_cmd
  138.  
  139. cmdkey D
  140.     user_defaults
  141.     end_cmd
  142.  
  143.  
  144. cmdkey G
  145.     text_file_section
  146.     end_cmd
  147.  
  148. cmdkey I
  149.     call main_info
  150.     end_cmd
  151.  
  152. cmdkey E
  153.     call E-MAIL
  154.     end_cmd
  155. cmdkey M
  156.     GOTO MESSAGE
  157.     end_cmd
  158.  
  159. cmdkey /L
  160.     nodelist_all
  161.     end_cmd
  162.  
  163. cmdkey $
  164.     minute_bank
  165.     end_cmd
  166. cmdkey O
  167.     file_download_batch
  168.     if_true
  169.         end_cmd
  170.         end_if
  171.     logoff
  172.     end_cmd
  173.  
  174. cmdkey /O
  175.     file_download_batch
  176.     if_true
  177.         end_cmd
  178.         end_if
  179.     logoff_fast
  180.     end_cmd
  181.  
  182. cmdkey Q
  183.     msg_qwk
  184.     end_cmd
  185.  
  186. cmdkey U
  187.     print "\r\nchList Users\r\n"
  188.     mnemonics "\r\n~Logons Today, ~Sub-board, or ~All: "
  189.     getcmd LSA\r
  190.  
  191.     cmdkey L
  192.         userlist_logons
  193.         end_cmd
  194.     cmdkey S
  195.         userlist_sub
  196.         end_cmd
  197.     cmdkey A
  198.         userlist_all
  199.         end_cmd
  200.  
  201.     # fall-through for CR, Ctrl-C, etc
  202.     end_cmd
  203.  
  204. cmdkey /U
  205.     userlist_all
  206.     end_cmd
  207.  
  208. cmdkey X
  209.     xtrn_section
  210.     end_cmd
  211. # fall through
  212. print "\r\nchUnrecognized command."
  213. compare_user_misc expert
  214. if_true
  215.     print " Hit 'i?nch' for a menu."
  216.     end_if
  217. crlf
  218. end_cmd
  219.  
  220. # shouldn't hit next line
  221. print "Problem in command shell."
  222. pause
  223. hangup
  224.  
  225. ############################### E-mail Section ################################
  226.  
  227. :e-mail
  228. cmd_home
  229. compare_user_misc expert
  230. if_false
  231.     menu E-MAIL
  232.     end_if
  233. async
  234. print "\r\nyhE-mail: n"
  235. getcmd ?SRFNUKQ\r
  236. logkey
  237.  
  238. cmdkey ?
  239.     compare_user_misc expert
  240.     if_true
  241.         menu E-MAIL
  242.         end_if
  243.     end_cmd
  244.  
  245. cmdkey S
  246.     print "_\r\nbhE-mail (User name or number): w"
  247.     getname 25
  248.     compare_str ""
  249.     if_true
  250.         end_cmd
  251.         end_if
  252.     compare_str "SYSOP"
  253.     if_true
  254.         setstr "1"
  255.         end_if
  256.     mail_send
  257.     end_cmd
  258.  
  259. cmdkey U
  260.     print "_\r\nbhE-mail (User name or number): w"
  261.     getname 25
  262.     compare_str ""
  263.     if_true
  264.         end_cmd
  265.         end_if
  266.     compare_str "SYSOP"
  267.     if_true
  268.         setstr "1"
  269.         end_if
  270.     mail_send_file
  271.     end_cmd
  272.  
  273. cmdkey R
  274.     mail_read
  275.     end_cmd
  276.  
  277. cmdkey F
  278.     setstr "1"
  279.     mail_send_feedback
  280.     end_cmd
  281.  
  282. cmdkey N
  283.     no_yes "\r\nAttach a file"
  284.     if_true
  285.         mail_send_netmail
  286.     else    
  287.         mail_send_netfile
  288.         end_if
  289.     end_cmd
  290.  
  291. cmdkey K
  292.     mail_read_sent
  293.     end_cmd
  294.  
  295. cmdkey Q
  296.     cmd_pop
  297.     return
  298.     end_cmd
  299.  
  300. cmd_pop
  301. return
  302.  
  303. ############################ Main Info Section  ###############################
  304.  
  305. :main_info
  306. cmd_home
  307. compare_user_misc expert
  308. if_false
  309.     menu MAININFO
  310.     end_if
  311. async
  312. print "\r\nyhInfo: n"
  313. getcmd ?QISVY\r
  314. logkey
  315.  
  316. cmdkey ?
  317.     compare_user_misc expert
  318.     if_true
  319.         menu MAININFO
  320.         end_if
  321.     end_cmd
  322.  
  323. cmdkey I
  324.     info_system
  325.     end_cmd
  326.  
  327. cmdkey S
  328.     info_subboard
  329.     end_cmd
  330.  
  331. cmdkey Y
  332.     info_user
  333.     end_cmd
  334.  
  335. cmdkey V
  336.     info_version
  337.     end_cmd
  338.  
  339. cmdkey Q
  340.     cmd_pop
  341.     return
  342.     end_cmd
  343.  
  344. cmd_pop
  345. return
  346.  
  347. ########################### Main Config Section  ##############################
  348.  
  349. :main_cfg
  350.  
  351. compare_user_misc expert
  352. if_false
  353.     menu MAINCFG
  354.     end_if
  355. async
  356. print "\r\nyhConfig: n"
  357. getcmd ?QNPIS\r
  358. logkey
  359.  
  360. cmdkey ?
  361.     compare_user_misc expert
  362.     if_true
  363.         menu MAINCFG
  364.         end_if
  365.     goto main_cfg
  366.     end_cmd
  367.  
  368. cmdkey N
  369.     msg_new_scan_cfg
  370.     return
  371.     end_cmd
  372.  
  373. cmdkey S
  374.     msg_your_scan_cfg
  375.     return
  376.     end_cmd
  377.  
  378. cmdkey P
  379.     msg_ptrs_cfg
  380.     return
  381.     end_cmd
  382.  
  383. cmdkey I
  384.     msg_ptrs_reinit
  385.     return
  386.     end_cmd
  387.  
  388. return
  389.  
  390.  
  391. ########################### File Transfer Section #############################
  392.  
  393. :file_transfers
  394.  
  395. compare_ars file_cmds=0
  396. if_true
  397.     compare_user_misc ask_nscan
  398.     if_true
  399.         yes_no "\r\n\r\nSearch all libraries for new files"
  400.         if_true
  401.             file_new_scan_all
  402.             end_if
  403.         end_if
  404.     end_if
  405.  
  406. cmd_home
  407.  
  408. compare_user_misc expert
  409. if_false
  410.     cls
  411.     menu TRANSFER
  412.     end_if
  413.  
  414. # Update node status
  415. node_action xfer
  416. async
  417.  
  418. inc_file_cmds
  419.  
  420. # Display main Prompt
  421. print "-c\r\n■ bhFile nc■ h"
  422. compare_ars exempt T
  423. if_true
  424.     print @TUSED@
  425. else
  426.     print @TLEFT@
  427.     end_if
  428. print " nc(h@LN@nc) @LIB@ (h@DN@nc) @DIR@: n"
  429.  
  430. # Get key (with / extended commands allowed)
  431. compare_user_misc COLDKEYS
  432. if_false
  433.     getkeye
  434. else
  435.     getstrupr 60
  436.     endif
  437.  
  438. compare_ars RIP
  439. if_true
  440.     getlines
  441.     end_if
  442.  
  443. # Do nothing for control keys and space
  444. cmdkey ^@
  445.     end_cmd
  446. cmdkey ^M
  447.     end_cmd
  448. cmdkey ^S
  449.     end_cmd
  450.  cmdkey  "
  451.     end_cmd
  452.  
  453. # Write command to log file
  454. logkey_comma
  455.  
  456. # Hitting number changes current sub-board
  457. cmdkey digit
  458.     compare_user_misc COLDKEYS
  459.     if_false
  460.         ungetkey
  461.         end_if
  462.     file_get_dir_num
  463.     end_cmd
  464.  
  465. # Hitting /number changes current group
  466. cmdkey edigit
  467.     compare_user_misc COLDKEYS
  468.     if_false
  469.         ungetkey
  470.     else
  471.         shift_str 1
  472.         end_if
  473.     file_get_lib_num
  474.     end_cmd
  475.  
  476. # Show the key hit
  477. compare_user_misc COLDKEYS
  478. if_false
  479.     printkey
  480.     endif
  481.  
  482. # Next directory
  483. cmdkey >
  484.     file_directory_up
  485.     end_cmd
  486. cmdkey }
  487.     file_directory_up
  488.     end_cmd
  489. cmdkey +
  490.     file_directory_up
  491.     end_cmd
  492. cmdkey =
  493.     file_directory_up
  494.     end_cmd
  495.  
  496. # Previous directory
  497. cmdkey <
  498.     file_directory_down
  499.     end_cmd
  500. cmdkey {
  501.     file_directory_down
  502.     end_cmd
  503. cmdkey -
  504.     file_directory_down
  505.     end_cmd
  506.  
  507. # Next library
  508. cmdkey ]
  509.     file_library_up
  510.     end_cmd
  511.  
  512. # Previous library
  513. cmdkey [
  514.     file_library_down
  515.     end_cmd
  516.  
  517. # String commands start with a semicolon
  518. cmdkey ;
  519.     compare_user_misc COLDKEYS
  520.     if_true
  521.         shift_str 1
  522.     else
  523.         getstrupr 40
  524.         end_if
  525.     exec_bin str_cmds
  526.     end_cmd
  527.  
  528. cmdkey Q
  529.     cmd_pop
  530.     return
  531.     end_cmd
  532.  
  533. compare_user_misc COLDKEYS
  534. if_false
  535.     crlf
  536.     end_if
  537. pause_reset
  538.  
  539. # Menu
  540. cmdkey ?
  541.     compare_user_misc expert
  542.     if_true
  543.         menu TRANSFER
  544.         end_if
  545.     end_cmd
  546.  
  547. # Sysop Menu
  548. compare_ars SYSOP
  549. if_true
  550.     cmdkey !
  551.         menu sysxfer
  552.         end_cmd
  553.     end_if
  554.  
  555. # Commands
  556.  
  557. cmdkey B
  558.     file_batch_section
  559.     end_cmd
  560.  
  561. cmdkey C
  562.     chat_section
  563.     end_cmd
  564.  
  565. cmdkey D
  566.     print "\r\nchDownload File(s)\r\n"
  567.     file_download_batch
  568.     if_true
  569.         end_cmd
  570.         end_if
  571.     getfilespec
  572.     if_true
  573.         file_download
  574.         end_if
  575.     end_cmd
  576.  
  577. cmdkey /D
  578.     print "\r\nchDownload File(s) from User(s)\r\n"
  579.     file_download_user
  580.     end_cmd
  581.  
  582. cmdkey E
  583.     print "\r\nchList Extended File Information\r\n"
  584.     getfilespec
  585.     if_true
  586.         file_list_extended
  587.         end_if
  588.     end_cmd
  589.  
  590. cmdkey F
  591.     print "\r\nchFind Text in File Descriptions (no wildcards)\r\n"
  592.     file_find_text
  593.     end_cmd
  594.  
  595. cmdkey /F
  596.     file_find_text_all
  597.     end_cmd
  598.  
  599. cmdkey I
  600.     call file_info
  601.     end_cmd
  602.  
  603. cmdkey J
  604.     file_select_area
  605.     end_cmd
  606.  
  607. cmdkey L
  608.     setstr *.*
  609.     file_list
  610.     end_cmd
  611.  
  612. cmdkey /L
  613.     nodelist_all
  614.     end_cmd
  615.  
  616. cmdkey N
  617.     print "\r\nchNew File Scan\r\n"
  618.     file_new_scan
  619.     end_cmd
  620.  
  621. cmdkey /N
  622.     file_new_scan_all
  623.     end_cmd
  624.  
  625. cmdkey O
  626.     file_download_batch
  627.     if_true
  628.         end_cmd
  629.         end_if
  630.     logoff
  631.     end_cmd
  632.  
  633. cmdkey /O
  634.     file_download_batch
  635.     if_true
  636.         end_cmd
  637.         end_if
  638.     logoff_fast
  639.     end_cmd
  640.  
  641. cmdkey R
  642.     print "\r\nchRemove/Edit File(s)\r\n"
  643.     getfilespec
  644.     if_true
  645.         file_remove
  646.         end_if
  647.     end_cmd
  648.  
  649. cmdkey S
  650.     print "\r\nchSearch for Filename(s)\r\n"
  651.     file_find_name
  652.     end_cmd
  653.  
  654. cmdkey /S
  655.     file_find_name_all
  656.     end_cmd
  657.  
  658. cmdkey T
  659.     file_temp_section
  660.     end_cmd
  661.  
  662. cmdkey U
  663.     print "\r\nchUpload File\r\n"
  664.     chkfile ..\text\menu\upload.*
  665.     if_true
  666.         menu upload
  667.         end_if
  668.     file_upload
  669.     end_cmd
  670.  
  671. cmdkey /U
  672.     print "\r\nchUpload File to User\r\n"
  673.     file_upload_user
  674.     end_cmd
  675.  
  676. cmdkey V
  677.     print "\r\nchView File(s)\r\n"
  678.     getfilespec
  679.     if_true
  680.         file_view
  681.         end_if
  682.     end_cmd
  683.  
  684. cmdkey Z
  685.     print "\r\nchUpload File to Sysop\r\n"
  686.     file_upload_sysop
  687.     end_cmd
  688.  
  689. cmdkey *
  690.     file_show_directories
  691.     end_cmd
  692.  
  693. cmdkey /*
  694.     file_show_libraries
  695.     end_cmd
  696.  
  697. cmdkey &
  698.     :xfercfg
  699.     compare_user_misc expert
  700.     if_false
  701.         menu XFERCFG
  702.         end_if
  703.     async
  704.     print "\r\nyhConfig: n"
  705.     getcmd ?QBEP\r
  706.     logkey
  707.  
  708.     cmdkey ?
  709.         compare_user_misc expert
  710.         if_true
  711.             menu XFERCFG
  712.             end_if
  713.         goto xfercfg
  714.         end_cmd
  715.  
  716.     cmdkey P
  717.         file_ptrs_cfg
  718.         end_cmd
  719.  
  720.     cmdkey B
  721.         toggle_user_misc BATCHFLAG
  722.         end_cmd
  723.  
  724.     cmdkey E
  725.         toggle_user_misc EXTDESC
  726.         end_cmd
  727.     end_cmd
  728.  
  729. cmdkey #
  730.     print "\r\nchType the actual number, not the symbol.\r\n"
  731.     end_cmd
  732.  
  733. cmdkey /#
  734.     print "\r\nchType the actual number, not the symbol.\r\n"
  735.     end_cmd
  736.  
  737. # fall through
  738. print "\r\nchUnrecognized command."
  739. compare_user_misc expert
  740. if_true
  741.     print " Hit 'i?nch' for a menu."
  742.     end_if
  743. crlf
  744. end_cmd
  745.  
  746. # shouldn't hit next line
  747. print "Problem in command shell."
  748. pause
  749. hangup
  750.  
  751. ############################ File Info Section  ###############################
  752.  
  753. :file_info
  754. cmd_home
  755. compare_user_misc expert
  756. if_false
  757.     menu XFERINFO
  758.     end_if
  759. async
  760. print "\r\nyhInfo: n"
  761. getcmd ?TYDUQ\r
  762. logkey
  763.  
  764. cmdkey ?
  765.     compare_user_misc expert
  766.     if_true
  767.         menu XFERINFO
  768.         end_if
  769.     end_cmd
  770.  
  771. cmdkey T
  772.     info_xfer_policy
  773.     end_cmd
  774.  
  775. cmdkey Y
  776.     info_user
  777.     end_cmd
  778.  
  779. cmdkey D
  780.     info_directory
  781.     end_cmd
  782.  
  783. cmdkey U
  784.     userlist_dir
  785.     end_cmd
  786.  
  787. cmdkey Q
  788.     cmd_pop
  789.     return
  790.     end_cmd
  791.  
  792. cmd_pop
  793. return
  794. ###################################MESSAGE###################################
  795. :MESSAGE
  796. CMD_HOME
  797. compare_user_misc expert
  798. if_false
  799.     cls
  800.     menu MSG1
  801.     end_if
  802.  
  803. # Display MESSAGE Prompt
  804. print "-c\r\n■ bhMESSAGE nc■ h"
  805. compare_ars exempt T
  806. if_true
  807.     print @TUSED@
  808. else
  809.     print @TLEFT@
  810.     end_if
  811. print " nc[h@GN@nc] @GRP@ [h@SN@nc] @SUB@: n"
  812. GETCMD ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890~!@#$%^&*(()[]{}":;'<>,.?|=+-_`\r
  813.  
  814. compare_ars RIP
  815. if_true
  816.     getlines
  817.     end_if
  818. cmdkey Q
  819.     GOTO MAIN
  820.     end_cmd
  821.  
  822. # Hitting number changes current sub-board
  823. cmdkey digit
  824.     compare_user_misc COLDKEYS
  825.     if_false
  826.         ungetkey
  827.         end_if
  828.     msg_get_sub_num
  829.     end_cmd
  830.  
  831. # Hitting /number changes current group
  832. cmdkey edigit
  833.     compare_user_misc COLDKEYS
  834.     if_false
  835.         ungetkey
  836.     else
  837.         shift_str 1
  838.         end_if
  839.     msg_get_grp_num
  840.     end_cmd
  841.  
  842. # Show the key hit
  843. compare_user_misc COLDKEYS
  844. if_false
  845.     printkey
  846.     endif
  847.  
  848. # Next sub-board
  849. cmdkey >
  850.     msg_subboard_up
  851.     end_cmd
  852. cmdkey }
  853.     msg_subboard_up
  854.     end_cmd
  855. cmdkey +
  856.     msg_subboard_up
  857.     end_cmd
  858. cmdkey =
  859.     msg_subboard_up
  860.     end_cmd
  861.  
  862. # Previous sub-board
  863. cmdkey <
  864.     msg_subboard_down
  865.     end_cmd
  866. cmdkey {
  867.     msg_subboard_down
  868.     end_cmd
  869. cmdkey -
  870.     msg_subboard_down
  871.     end_cmd
  872.  
  873. # Next group
  874. cmdkey ]
  875.     msg_group_up
  876.     end_cmd
  877.  
  878. # Previous group
  879. cmdkey [
  880.     msg_group_down
  881.     end_cmd
  882.  
  883.  
  884. # Do nothing for control keys and space
  885. cmdkey ^@
  886.     end_cmd
  887. cmdkey ^M
  888.     end_cmd
  889. cmdkey ^S
  890.     end_cmd
  891. cmdkey  "
  892.     end_cmd
  893.  
  894. # Write command to log file
  895. logkey_comma
  896.  
  897. cmdkey ?
  898.     compare_user_misc expert
  899.     if_true
  900.         menu MSG1
  901.         end_if
  902.     end_cmd
  903. cmdkey B
  904.     print "\r\nchBrowse/New Message Scan\r\n"
  905.     msg_browse_scan
  906.     end_cmd
  907. cmdkey F
  908.     print "\r\nchFind Text in Messages\r\n"
  909.     msg_find_text
  910.     end_cmd
  911.  
  912. cmdkey /F
  913.     msg_find_text_all
  914.     end_cmd
  915.  
  916. cmdkey J
  917.     msg_select_area
  918.     end_cmd
  919. cmdkey N
  920.     print "\r\nchNew Message Scan\r\n"
  921.     msg_new_scan
  922.     end_cmd
  923.  
  924. cmdkey /N
  925.     msg_new_scan_all
  926.     end_cmd
  927.  
  928. cmdkey O
  929.     file_download_batch
  930.     if_true
  931.         end_cmd
  932.         end_if
  933.     logoff
  934.     end_cmd
  935.  
  936. cmdkey /O
  937.     file_download_batch
  938.     if_true
  939.         end_cmd
  940.         end_if
  941.     logoff_fast
  942.     end_cmd
  943.  
  944. cmdkey P
  945.     msg_post
  946.     end_cmd
  947.  
  948.  
  949.  
  950. cmdkey R
  951.     msg_read
  952.     end_cmd
  953.  
  954. cmdkey S
  955.     print "\r\nchScan for Messages Posted to You\r\n"
  956.     msg_your_scan
  957.     end_cmd
  958.  
  959. cmdkey /S
  960.     msg_your_scan_all
  961.     end_cmd
  962.  
  963. cmdkey Z
  964.     print "\r\nchContinuous New Message Scan\r\n"
  965.     msg_cont_scan
  966.     end_cmd
  967.  
  968. cmdkey /Z
  969.     msg_cont_scan_all
  970.     end_cmd
  971.  
  972. cmdkey *
  973.     msg_show_subboards
  974.     end_cmd
  975.  
  976. cmdkey /*
  977.     msg_show_groups
  978.     end_cmd
  979.  
  980. cmdkey &
  981.     call main_cfg
  982.     end_cmd
  983.  
  984. cmdkey #
  985.     print "\r\nchType the actual number, not the symbol.\r\n"
  986.     end_cmd
  987.  
  988. cmdkey /#
  989.     print "\r\nchType the actual number, not the symbol.\r\n"
  990.     end_cMD
  991.  
  992.  
  993.  
  994. # fall through
  995. print "\r\nchUnrecognized command."
  996. compare_user_misc expert
  997. if_true
  998.     print " Hit 'i?nch' for a menu."
  999.     end_if
  1000. crlf
  1001. end_cmd
  1002.  
  1003. cmdkey Q
  1004.     cmd_pop
  1005.     return
  1006.     end_cmd
  1007.  
  1008. # shouldn't hit next line
  1009. print "Problem in command shell."
  1010. pause
  1011. hangup
  1012.  
  1013.  
  1014. #end of DEFAULT.SRC
  1015.